package org.finesys.codegen.service;

import org.finesys.codegen.entity.GenDatasourceConf;
import org.finesys.common.mp.core.service.BaseService;

public interface GenDatasourceConfService extends BaseService<GenDatasourceConf> {

    /**
     * 保存数据源并且加密
     *
     * @param datasourceConf
     * @return
     */
    Boolean saveDsByEnc(GenDatasourceConf datasourceConf);

    /**
     * 更新数据源
     *
     * @param datasourceConf
     * @return
     */
    Boolean updateDsByEnc(GenDatasourceConf datasourceConf);

    /**
     * 通过数据源名称删除
     *
     * @param dsId 数据源ID
     * @return
     */
    Boolean removeByDsId(Long[] dsIds);

    /**
     * 校验数据源配置是否有效
     *
     * @param datasourceConf 数据源信息
     * @return 有效/无效
     */
    Boolean checkDataSource(GenDatasourceConf datasourceConf);

    /**
     * 更新动态数据的数据源列表
     *
     * @param datasourceConf
     * @return
     */
    void addDynamicDataSource(GenDatasourceConf datasourceConf);
}
